package com.autumn.chat.config;

import com.autumn.chat.socket.SSLWebSocketClient;
import com.autumn.chat.struct.gpt.PushMessage;

import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.BlockingQueue;

/**
 * ClassName: GlobalParam
 * Description:
 * Author: Shen_Yue
 * Date: 2023/3/4 2:04
 * History:
 * <author>          <time>          <version>          <desc>
 * wangqiuyang    2023/3/4 2:04   @Version 1.0        描述
 */
public class GlobalParam {

    /** 定义全局参数 */
    // socket客户端
    public static SSLWebSocketClient sslWebSocketClient;
    // socket 连接url
    public static String WSS_LINK;

    // gpt请求信息队列
    public static BlockingQueue<PushMessage> gptPushQueue = new ArrayBlockingQueue<>(1000);

    // 请求秘钥和key
    public static String ACCESS_KEY_ID;
    public static String ACCESS_KEY_SECRET;
    public static String OPEN_AI_SECRET_KEY;
    // wss 鉴权body
    public static String AUTH_BODY;

    // 直播间相关参数
    public static String GAME_ID;
    public static long APP_ID;
    public static String AUTH_ID;

    // gpt 的 http 代理
    public static String PROXY_HOST;
    public static int PROXY_PORT;

    // gpt生成的最大token数量
    public static int MAX_TOKENS;

    // 线程运行状态
    public static boolean PROJECT_STARTED = false;
    public static boolean WSS_STARTED = false;
    public static boolean GPT_PUSH_STARTED = false;

}
